home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload Trio 2
/
Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO
/
dir34
/
xmedia10.zip
/
XMEDIA.DOC
next >
Wrap
Text File
|
1994-07-24
|
15KB
|
278 lines
═══════════════════════════════════════════════════════════════════════════════
XMedia Disk media error detect utility (c)1994 Brand-X FreeWare
═══════════════════════════════════════════════════════════════════════════════
Note: You will need a disk test utility, such as NORTON's DISK TEST (DT.EXE)
to complete the media test using this program... There are also many
DISK TEST clones out there, so finding one should be no problem.
What's it do?
-----------------
XMedia from Brand-X FreeWare is actually very simple. All it does is
fill every available byte on floppy disks with ASCII 255 (FF Hex). It's
setup to be fast and easy to use, operation is mostly automatic. XMedia
will generate a 360K (approximately) file called 360K255.FIL that it
uses to fill the floppy disk with. If this file doesn't exist when
XMedia is started from the command prompt, it will generate it.
After you run XMedia and fill a disk with CHR$255, run DISK TEST
to expose bad or weak sectors and mark them as bad so they won't fail
later with your valuable data in them!
READ the following - it's very informative and might save you data...
Page 1
═══════════════════════════════════════════════════════════════════════════════
Theory
------------
As we all know, our data is composed of digital on/off switches. Each byte
consists of 8 bits - a binary number, that represents the character value,
from 0 to 255, and 1 parity bit that DOS uses to determine if the data is
accurate or not. Bits are either on (1) or off (0). I've illustrated the
concept below.
8 Data Bits 1 Parity
1 byte--> ┌─────────────────────────────────────┐┌────┐
1 0 1 1 1 0 0 1 0
Disk surface────┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─── Disk surface
│░░│ │ │ │░░│ │░░│ │░░│ │ │ │ │ │░░│ │ │
└──┘ └──┘ └──┘ └──┘ └──┘ └──┘ └──┘ └──┘ └──┘
Bit cells
1=charged (░░) 0=not charged
One way to think of each place on the disk that a bit is stored in, is as a
"cell" that is either "charged up" with magnetism (1) , or not (0).
Page 2
═══════════════════════════════════════════════════════════════════════════════
Data errors occur most often when cells fail to hold a "charge", thus making
the byte of data invalid. If *ONE* bit fails - you can lose an entire program,
database, or other important file!
We can imagine the cell as a glass of water. Cells are not likely to fill
up all by themselves, but they COULD "leak" or lose their charge. Whether
cells leak or not is determined by the quality of the media. One flaw in the
magnetic properties of the disk can make ONE or MANY bit cells leak. They can
also have a tendancy to leak over time. So how do we find leaky cells?
The first step is to charge them all up! This means we need to write an
ASCII character that has the maximum bit cells turned on. There is only one.
The last character in the IBM extended character set - 255. By writing this
character to every data byte location on the disk, the maximum number of bit
cells is turned on.
Now all we have to do is wait for a leak. How long does this take?
Anywhere from 1 millionth of a second to 100 years! Well, we DON'T want to
wait 100 years, or even ONE for that matter - but we DO need to find out if
any of the cells leak, or even MIGHT leak in the future. Some people simply
say "Just re-format it to find bad spots." Here's why you SHOULDN'T ...
Page 3
═══════════════════════════════════════════════════════════════════════════════
We are all familiar with the format process. DOS writes the format pattern
on the disk and "roughly" tests it for errors. Sometimes, it returns the
message "xxxx Bytes in bad sectors". When FORMAT.COM finds bad areas, it marks
the entire cluster as bad in the FAT tables, so that DOS won't write anything
to it. Later, when you write a file to the disk, DOS basically "skips" these
bad places, so your data gets written to places that seemed ok at the time of
format.
Unfortunately, FORMAT.COM can't take the time to wait and see if the cells
fail, so if a cell doesn't fail in a very short time, it passes. The result
is: formatting/reformatting a disk does NOT find all the defective areas. In
fact, if a disk with sectors marked as bad is RE-formatted, it's possible that
some of those sectors will hold a charge long enough to pass thru the format
process on a subsequent format and be marked as good!
People who reformat disks a number of times concurrently to make bad
sectors "go away" often have the highest data error rate known to mankind.
Summary - DO NOT reformat disks to find bad areas, or erase a disk.
Always delete any files and then run DISK TEST.
Page 4
═══════════════════════════════════════════════════════════════════════════════
OK - so lets say that we've run XMedia on a disk, and all the cells are
charged up. We need to read the disk and see if any have gone bad. Usually,
you can simply test read the entire disk and allow DOS to look for parity
errors. These are what causes the dreaded "Data error reading disk X" message.
Parity? Huh?
The parity system uses an "extra" bit to help DOS spot bad data. The 8 bits
in a data byte are totalled up, and the if the resulting number is even, you
get a parity of 1. Similarly, an odd result gets a parity of 0. This parity
bit is included with each 8 bits of data, effectively making a byte 9 bits -
(8 of data, and one parity). Of course this is no guarantee that you'll catch
an error, since there's a 50% chance that the total value may remain even (or
odd) and still be different than when it was first written.
Ideally, we should scan the disk and make sure EVERY character is still
CHR255 - later versions of XMedia should be able to do this for you.. for now,
let's let a disk test program do the work for us....
By reading the disk, each byte is automatically checked for parity error.
DOS does this for us. Run your disk test program and see if anything turns up.
Page 5
═══════════════════════════════════════════════════════════════════════════════
A good disk test program will scan the entire data area, looking for errors.
When it finds one, it should remember where it is, and at the end of the scan,
offer to mark that area as bad in the FAT tables, just as FORMAT.COM does at
format time, so you don't write data to it later. Once an area is marked as
bad, it will NEVER be accessable to DOS again, UNLESS you re-format the disk!
(DON'T DO IT!) Once we find these areas, we want them PERMENANTLY disabled.
If data errors are found, be sure and let the disk test program mark the
areas as bad, and do not ever reformat the disk.
If you really want to give your disks the acid test, wait a week and then
run the disk test again... but DO NOT run Xmedia again! Here's why:
Once you have charged up all the bit cells, you want to allow them time to
leak if they are so inclined... if you WRITE to them again, it will re-charge
them and not allow them to fail in time. One other factor can accellerate this
process - HEAT. Temperature plays a roll in how well a material can retain a
magnetic charge. The higher the temperature, the harder it is for a material
to retain the charge - in fact permenant magnets are made by allowing liquid
metal to harden and cool while being surrounded with a strong electromagnet to
align all the atoms in the material - and that's what causes a magnetic field.
Page 6
═══════════════════════════════════════════════════════════════════════════════
The ultra acid/hammer test... The worst thing you can do to your disks,
beside cut them to pieces with scissors, is to expose them to temperature
cycling. Temperatures over 80°F can greatly accellerate magnetic decay in disk
material, and after a few weeks of the normal daily ambient temperature
changes, your data can be in pretty poor shape.
The test....
Store the disks to be tested for a week or more in a place that sees about
85°F to 95°F during the day, and 50°F to 60°F at night. The garage is a good
place.. protect them from dust tho. This is pretty harsh treatment.
REMEMBER!! DON'T run XMedia again!! Run the DISK TEST again, and see if
you've turned up any more errors. If you HAVEN'T, you found yourself some
pretty decent quality media.
Odds are, however, that out of 50 disks from any one manufacturer that
passing the format, AND the first disk test, you'll turn up a at least 5 or 6
disks with fresh data errors. These are the ones we really want to find.
Page 7
═══════════════════════════════════════════════════════════════════════════════
Here's some ideas to maximize media reliability...
* Never reformat a disk. Always run a disk test program to flag bad spots.
* Always store your disks in a cool place - avoid heat.
* Run the disk test often, especially after storing disks for a long time,
and just prior to writing data to them.
* Run XMedia on all your disks, blank or not to fill any available disk space
with CHR255 Note - XMEDIA will not overwrite any existing data on the disk.
Ideally, you should run XMedia as soon as a disk is formatted, that way the
entire disk will be filled.
* Familiarize yourself with the sound the disk drive makes when a data error
occurs. DOS will retry 4 to 5 times to read a byte before it stops and
displays the error. Sometimes, DOS will get the data right after a few tries
and never tell you that it had trouble. This is a clue that a data error is
inevitable
I've included the actual test results that this program is based on....
Page 8
═══════════════════════════════════════════════════════════════════════════════
How many files do you have on floppy disk? We have thousands. In fact,
several gigabytes worth.
A study was done by Brand-X on a 2 groups of disks...
Group Quantity Type
------- --------- -------------------------------------------------
Group 1 380 720K 3½" disks, that were punched out to be 1.4m
From various cheapie no-name brands.
Group 2 350 1.4m disks from various manufacturers, including the
cheapest no-name bulk disks we could find, all the
way up thru brand names like Maxel and Sony.
The disks were loaded with shareware and GIF images, etc. - and were
completely full, with the possible exception of 1 or 2k of leftover space per
disk, if any. The disks were stored for 1 year, and read from occassionally
during that time as files were needed.. Data errors were pretty common. We
flagged the spots bad as they were found.
Page 9
═══════════════════════════════════════════════════════════════════════════════
Prior to running XMedia on both groups, the 720K group tended to have more
data errors than the 1.4m group,
We got tired of losing files. It took over 3 months of "spare time" to copy
all the files off of each disk, run XMedia, test the disk, and then copy the
files back to it. During the copying and testing process, the errors were
numerous...
720K Group: 1 error per 15-20 disks,
1.4m Group: 1 error per 30-35 disks.
After copying, testing and re-copying all the disks, they went back into
storage mode for the following year.. This time we were careful to store them
in a cool environment. Disks were read from as needed and NO ERRORS were
encountered! Just recently, the entire library has been copied to tape, and
the disks liquidated. We kept track of the errors for both groups...
720K Group: 2 errors per 380 disks!
1.4m Group: 1 error per 350 disks.
Page 10
═══════════════════════════════════════════════════════════════════════════════
The tests seem to show two things:
1. Disks become more reliable if the bad areas are flagged permenantly as
they are found and not re-formatted.
2. Pre-testing the media by charging all the bit cells and temperature cycling
before use yeilded a much greater relability factor.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
It sure worked for us, and a number of other people.
Try it - it's free! You can easily incorporate this method by
A. Running XMedia on disks as soon as you get and format them. Then just store
the disks normally until you need them...
B. Run a disk test on the disk each time BEFORE you write data to it.
C. When errors ARE encountered, erase the defective file and run the disk test
to flag the spot bad. Do not run XMedia on the disk again. Remember - once
you fill the disk, it stays there until you write something else over it.
Page 11
═══════════════════════════════════════════════════════════════════════════════
Brand-X FreeWare Info / Stuff
Brand-X FreeWare is just that: No-Guilt software that's free for the
taking. No registration or other compensation is required. If you like
this program and want more of our stuff, but can't seem to find it
on the BBS's, you can get a floppy (any size) with other Brand-X FreeWare
releases by sending 5 bux to: JC @ P.O.Box 1953 Santa Clarita, CA. 91386
Comments / Suggestions are also welcome. Here's more Brand-X warez:
PSET - An EZ to use graphics screen draw/CAD (ahem) for CGA.
XLIB - Library director for Quick Basic 4.x series.
PCIS - Purple Chickens in Space! A funny CGA demo.
XS20 - X-Section - cuts up large Binary or text files for
transportation on small floppies, then re-assembles them.
XJOY - Read and test joystick/game ports 1 and 2.
XSCAN - Keyboard code scanner, great for programming references.
SCRIBBL3 - CGA screen grafix demo. Sit and trip out.
XASCII - ASCII/Hex/Character chart/X-reference for programmers.
XSCAM - Screen text capture to file. Resident/and non resident.
XLIST - Searches BBS and other text lists for matching data.
XBANNER - Create colorful alternating block ANSI messages.
XNEBULA - VGA space scene generator/Gas clouds/planets and more.
─┬─┬─ ┌┬┐
"XMedia" and "Brand-X FreeWare" are Trademarks of └┘ └──┘ └ Digital Imaging